A hierarchical memory model balances the need for quick access to data in memory against the cost of memory itself. Data that will probably be used in the near term is kept in fast memory, while data that is not likely to be used in the near term migrates out to big, slow, memory. The efficiency of moving data between fast and slow memory plays a critical part in computer performance. If data that is more likely to be used in the near future is moved from slower memory to faster memory, it will be accessed from fast memory and the computer operates more efficiently. To-date, prefetch algorithms have relied on the principle of locality, moving data stored at addresses close to the addresses of data currently being used by the computer to faster memory.
Artificial neural network programming, genetic programming and wavelet analysis can be usefully combined in a variety of ways. Neural networks can sharpen the selection process in a genetic algorithm, and can themselves be evolved using a genetic algorithm. Basis selection in multi-resolution wavelet analysis can be improved using genetic programming to construct the thresholding function.